package com.woan.api.idao;

import java.util.List;
import java.util.Map;

import com.woan.api.model.SysVideo;
import com.woan.api.model.SysVideoBasic;
import com.woan.api.vo.VpositionList;
import com.woan.api.vo.VClientvideoList;
import com.woan.api.vo.VvideoList;

public interface SysVideoBasicIDAO {
	//客户端---编辑视频信息
	public String EditVideos(String rid ,String uid,String username,String vid,String title,String address,String longitude,String latitude,String detail,String countrycode,String countryname,String province,String city,String counties);
	//客户端---根据视频id获取视频基本新
	public SysVideoBasic get(String vid);
	
	
	//根据数据库生成的SysVideo实体类返回直播列表
	public List<SysVideoBasic> FindLiveVideoByGroup(String groupid, Integer beginIndex,Integer endIndex);
	//根据自定义返回的实体返回直播列表
	public List<VClientvideoList> FindVCLiveVideoByGroup(String groupid, Integer beginIndex,Integer endIndex);
	public List<VvideoList> FindVLiveVideoByGroup(String groupid, Integer beginIndex,Integer endIndex);
	//根据自定义返回的实体返回历史列表
	public List<VClientvideoList> FindVCHistoryVideoByGroup(String groupid, Integer beginIndex,Integer endIndex);
	public List<VvideoList> FindVHistoryVideoByGroup(String groupid, Integer beginIndex,Integer endIndex);
	//根据自定义返回的实体返回我的视频
	public List<VClientvideoList> FindVMyVideoByUid(String uid, Integer beginIndex,Integer endIndex);
	//历史列表数量
	public int FindHistoryVideoCountByGroup(String groupid);
	//我的视频列表数量
	public int FindMyVideoCountByUid(String uid);
	//根据自定义返回的实体返回搜索列表
	public List<VvideoList> FindVSerachVideoByDetail(String groupid,Integer beginIndex,Integer endIndex,Map<String, String> map);
	//编辑视频描述
	public String EditVideos(String videoid,String videodetail);
	
	//根据groupid返回位置信息视图
	public List<VpositionList> FindVVideoPostion(String groupid);
	
	//更新视频状态-----拍摄之前首先将之前的未结束的视频结束
	public void UpdateVideoState(String uid);
	//插入新视频
	public void InsertVideo(SysVideo sysVideo);
	//视频视频id和视频类型查找视频信息
	public SysVideo FindVideoByVidAndType(String vid,String videotype);
	//更新视频
	public void UpdateVideo(SysVideo sysVideo);
	//更新任务
	public void UpdateVideoBasic(SysVideoBasic videoBasic);
	//删除任务
	public void deletVideoBasic(SysVideoBasic videoBasic_task);
	
	//插入新的视频信息
	public void saveVideoBasic(SysVideoBasic videoBasic);
}
